!KPatience

King Albert Patience (desktop version)

By D. Salt

As with ordinary Patience, you must build up each suit from Ace to King.

You are dealt nine playing columns (stacks) of cards, ranging from nine
cards on the left to one card on the right. The remaining seven form the
reserve.

You are allowed to move only one card at a time. The only cards available
are the card at the bottom of any column (think of it as the top of a
stack), the top card on the suit stacks, or any card in the reserve.

A card can only be moved to another playing stack if the top card on that
stack is one higher and opposite colour, or if that stack is empty. An ace
may be moved to an empty suit stack. Any other card may be moved to its suit
stack providing that the top card is one lower. You cannot move cards to the
reserve.

When you place a card on another playing stack, you may drop it anywhere on
that stack - on any card, or the panel under the stack.

For example, moving the Six of Hearts to a playing stack with the Seven of
Clubs on top is valid; moving it to the Hearts suit stack with the Five as
its top card is also valid.

A quick way to move a card to its suit stack is by ADJUST-clicking on it.

Don't be tempted to put kings in empty stacks, which can be used as a store
for a card which is blocking a move, or when moving sequences of cards from
one stack to another.

When all the cards have been sorted (ie. into descending order up each
stack, or down the window, depending on how you think about it), the
computer will take over and move all the cards, one by one, to the suit
stacks if the 'Auto finish' menu option is ticked.

The 'Auto stack' menu option allows cards to be automatically put on their
suit stacks. This happens when the top card of the destination playing stack
can be put on its suit stack and either there is no second card or it is one
higher than and of the opposite colour to the card you are moving. Example:
moving the Six of Hearts to a stack with top card Ace of Clubs and second
card Seven of Spades. The Ace is stacked, and the Six is put on the Seven.

 The window layout is:
  ___
 |   |  Suit stacks    Message space
 | H | ___  ___  ___  ___  ___  ___  ___  ___  ___
 |___||___||___||___||___||___||___||___||___||   |
 |   ||___||___||___||___||___||___||___||   ||   |
 | C ||___||___||___||___||___||___||   ||   ||___|
 |___||___||___||___||___||___||   ||   ||___|
 |   ||___||___||___||___||   ||   ||___|
 | D ||___||___||___||   ||   ||___|
 |___||___||___||   ||   ||___|
 |   ||___||   ||   ||___|
 | S ||   ||   ||___|
 |___||   ||___|
  ___ |___|
 |___|                                  
 |___|  \_______________________________________/
 |___|                      |
 |___|                Playing stacks
 |___|  Reserve cards
 |___|
 |___|
 |   |
 |   |
 |___|

An empty suit stack is shown by its suit symbol on a light grey background.

The message space tells you when you've tried to make an invalid move, when
the computer is stacking the cards for you, and when you've won the game.
It's up to you to decide when you cannot win.

You can save the option settings ('Auto finish' and 'Auto stack') by
selecting the 'Save options' menu item. The saved options are used when you
load the game; if the options file is missing, then it defaults to 'Auto
finish' on and 'Auto stack' off.

You will notice that there's no sprite file for the program, other than the
application icons. The routine to generate the sprites is perhaps K at the
most (and runs in about a second on my standard A3010), whereas, saved as a
sprite file, it would take up a little over 9K. A small saving, but
worthwhile.

Just be patient now...
